|
Parikh's theorem in theoretical computer science says that if one looks only at the relative number of occurrences of terminal symbols in a context-free language, without regard to their order, then the language is indistinguishable from a regular language. It is useful for deciding whether or not a string with a given number of some terminals is accepted by a context-free grammar.〔(【引用サイトリンク】title=Parikh's theorem )〕 It was first proved by Rohit Parikh in 1961 and republished in 1966. ==Definitions and formal statement== Let be an alphabet. The ''Parikh vector'' of a word is defined as the function , given by〔 , where denotes the number of occurrences of the letter in the word . A subset of is said to be ''linear'' if it is of the form for some vectors . A subset of is said to be ''semi-linear'' if it is a union of finitely many linear subsets. The formal statement of Parikh's theorem is as follows. Let be a context-free language. Let be the set of Parikh vectors of words in , that is, . Then is a semi-linear set. If is any semi-linear set, the language of words whose Parikh vectors are in is a regular language. Thus, if one considers two languages to be ''commutatively equivalent'' if they have the same set of Parikh vectors, then every context-free language is commutatively equivalent to some regular language. 抄文引用元・出典: フリー百科事典『 ウィキペディア(Wikipedia)』 ■ウィキペディアで「Parikh's theorem」の詳細全文を読む スポンサード リンク
|